In today's world of business software development, a business idea goes through a large number of hands during its development, before the idea becomes an implemented software product. The development may involve business people, analyst, system architect, and programmers. First, the business people who want the product write a requirement from business perspective; then the analyst tries to convert the requirement from business perspective to IT (information technology) perspective. Then the system architect tries to convert the IT requirements into detailed requirements in view of an actual available system, and the programmers try to write code and implement the idea.
Each transfer of the idea from one party to another tends to introduce errors and distortions of the original requirements.